{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "c0d94543",
   "metadata": {},
   "source": [
    "# 概率统计模块\n",
    "\n",
    "SciPy中负责概率统计的模块时scipy.stats："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "0323fda0",
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "ea2b31ec",
   "metadata": {},
   "outputs": [],
   "source": [
    "from matplotlib import pyplot as plt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "9d6b94fb",
   "metadata": {},
   "outputs": [],
   "source": [
    "from scipy import stats"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "2eb8f58e",
   "metadata": {},
   "source": [
    "## 基本统计量的计算"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "7fc39d97",
   "metadata": {},
   "source": [
    "考虑这组身高数据："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "1cfae90e",
   "metadata": {},
   "outputs": [],
   "source": [
    "h = np.array([1.46,1.79,2.01,1.75,1.56,1.69,1.88,1.76,1.88,1.78])"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8fc090f1",
   "metadata": {},
   "source": [
    "NumPy已经可以计算一些基础的统计数据，如最大最小值："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "9c6c1729",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(2.01, 2.01)"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.max(h), h.max()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "ccc45a1d",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(1.46, 1.46)"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.min(h), h.min()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "cc809e66",
   "metadata": {},
   "source": [
    "均值、方程、标准差："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "7abd9cbc",
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(1.7559999999999998, 1.7559999999999998)"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.mean(h), h.mean()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "09e80419",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(0.15081114017207078, 0.15081114017207078)"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.std(h), h.std()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "db7e998d",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(0.022743999999999986, 0.022743999999999986)"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.var(h), h.var()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "74df8569",
   "metadata": {},
   "source": [
    "中位数："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "cea2e377",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "1.77"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.median(h)"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "id": "7001a33e",
   "metadata": {},
   "source": [
    "scipy.stats模块提供了一些其他的统计量，如众数及其出现次数："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "27e4d216",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "ModeResult(mode=array([1.88]), count=array([2]))"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "stats.mode(h)"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "id": "0af21249",
   "metadata": {},
   "source": [
    "偏度和峰度："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "b8ceceb5",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(-0.3935244564726347, -0.33067209772439865)"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "stats.skew(h), stats.kurtosis(h)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "0abc9a2f",
   "metadata": {},
   "source": [
    "## 概率分布"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "id": "8aaeda01",
   "metadata": {},
   "source": [
    "概率分布可以分成连续分布和离散分布两大类。为了处理不同的分布，scipy.stats模块提供了一套公用的接口来处理它们。"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "cc3da255",
   "metadata": {},
   "source": [
    "### 连续分布的处理"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8ca5107c",
   "metadata": {},
   "source": [
    "最常见的连续分布是正态分布："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "7b7dc553",
   "metadata": {},
   "outputs": [],
   "source": [
    "from scipy.stats import norm"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "17b49e72",
   "metadata": {},
   "source": [
    "产生一个服从标准正态分布的数组："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "id": "408e78a0",
   "metadata": {},
   "outputs": [],
   "source": [
    "x_norm = norm.rvs(size=1000)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "708181ec",
   "metadata": {},
   "source": [
    "其直方图如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "id": "1de03a6a",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "h = plt.hist(x_norm, bins=20, density=True)"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "id": "b0af653b",
   "metadata": {},
   "source": [
    "数学上，正态分布有两个参数，分别为均值和标准差。可以使用.fit()方法估计上面这组数据对应的正态分布参数："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "id": "0e7bb812",
   "metadata": {},
   "outputs": [],
   "source": [
    "x_mean, x_std = norm.fit(x_norm)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "id": "3f5808d7",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(-0.04144512171911825, 1.0443013935968204)"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "x_mean, x_std"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "id": "c6f556a3",
   "metadata": {},
   "source": [
    "标准正态分布的均值为0，标准差为1，估计出的参数与真实参数已经十分接近。\n",
    "\n",
    "可以用方法`norm.pdf()`来计算正态分布在某点处的对应的概率密度函数值："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "id": "261acbdd",
   "metadata": {},
   "outputs": [],
   "source": [
    "x = np.linspace(-3, 3)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "id": "a0dfeaba",
   "metadata": {},
   "outputs": [],
   "source": [
    "p = norm.pdf(x)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "id": "6dcdecfb",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x128670310>]"
      ]
     },
     "execution_count": 20,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "h = plt.hist(x_norm, bins=20, density=True)\n",
    "plt.plot(x, p)"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "id": "990a2278",
   "metadata": {},
   "source": [
    "累计分布函数可以用方法`norm.cdf()`计算，对于正态分布来说，若均值为μ，标准差为σ，则有以下结论：\n",
    "- 数据分布在(μ-σ,μ+σ)的概率约为0.683\n",
    "- 数据分布在(μ-2σ,μ+2σ)的概率约为0.954\n",
    "- 数据分布在(μ-3σ,μ+3σ)的概率约为0.997\n",
    "\n",
    "利用标准正态分布的累计分布函数对这些结论进行验证："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "id": "a5018cf3",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.6826894921370859"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "norm.cdf(1) - norm.cdf(-1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "id": "fa040653",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.9544997361036416"
      ]
     },
     "execution_count": 22,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "norm.cdf(2) - norm.cdf(-2)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "id": "8ddb4fcd",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.9973002039367398"
      ]
     },
     "execution_count": 23,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "norm.cdf(3) - norm.cdf(-3)"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "id": "1456d578",
   "metadata": {},
   "source": [
    "累积分布函数的反函数可以使用`norm.ppf()`方法得到。比如找到标准正态分布中概率恰好为一半的点："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "id": "fd4ae1bb",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.0"
      ]
     },
     "execution_count": 24,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "norm.ppf(0.5)"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "id": "7c6d093d",
   "metadata": {},
   "source": [
    "scipy.stats模块可以使用位置和尺度参数来改变概率分布的参数。设位置参数为loc，尺度参数为scale，对概率密度函数为`p(x)`的概率分布，进行尺度与平移变换后，新的概率密度函数为`p((x-loc)/scale)`。\n",
    "\n",
    "在正态分布的例子中，方法.fit()返回的其实是对这两个参数的估计。在正态分布中，这两个参数恰好对应分布的均值和标准差。\n",
    "\n",
    "可以通过改变这两个参数得到不同参数的概率分布："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "id": "1bbb46c1",
   "metadata": {},
   "outputs": [],
   "source": [
    "x = np.linspace(-3, 3)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "id": "7ced3370",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.legend.Legend at 0x1286e0d30>"
      ]
     },
     "execution_count": 26,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(x, norm.pdf(x),\n",
    "         x, norm.pdf(x, loc=0.5, scale=2), '--',\n",
    "         x, norm.pdf(x, loc=-0.5, scale=0.5), ':')\n",
    "\n",
    "plt.legend([r'$\\mu=0,\\sigma=1$', \n",
    "            r'$\\mu=0.5,\\sigma=2$',\n",
    "            r'$\\mu=-0.5,\\sigma=0.5$'])"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "0b421bc0",
   "metadata": {},
   "source": [
    "也可以将loc和scale参数直接传递给norm，来构造一个新的概率分布对象。下面这两种用法是等价的：\n",
    "```python\n",
    "norm(loc=0.5, scale=2).pdf(x)\n",
    "norm.pdf(x, loc=0.5, scale=2)\n",
    "```"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "353fce9c",
   "metadata": {},
   "source": [
    "除了正态分布外，还有一些其他的连续分布，如指数分布和学生t分布："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "id": "48aab732",
   "metadata": {},
   "outputs": [],
   "source": [
    "from scipy.stats import expon, t"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "id": "005d2860",
   "metadata": {},
   "source": [
    "指数分布的例子，其参数λ是尺度参数scale的倒数："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "id": "ee6af681",
   "metadata": {},
   "outputs": [],
   "source": [
    "x = np.linspace(0.01, 1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "id": "df3909d3",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.legend.Legend at 0x127fb97f0>"
      ]
     },
     "execution_count": 29,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXoAAAD4CAYAAADiry33AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAAsTAAALEwEAmpwYAAA5J0lEQVR4nO3dd3hcxbn48e+r3uuqy5IsF1nuNu5UAy6YXi7gcENJwAkE8ku4JCS5SQglJIFwk3BJAIdAIBdMSIiJARcM2IABG/du4yZbxbKa1bs0vz/OSlpjy1pJK6129X6eZx/tOXP26D0u78zOmTMjxhiUUkp5Lx93B6CUUqpvaaJXSikvp4leKaW8nCZ6pZTycprolVLKy/m5O4AzsdlsJiMjw91hKKWUx9i8eXOJMSbuTGUDMtFnZGSwadMmd4ehlFIeQ0SOdlbWZdeNiAwRkTUiskdEdovI/zvDMSIiT4vIQRHZISKTHcpuE5ED9tdtPb8MpZRSPeFMi74Z+C9jzBYRCQc2i8hqY8weh2MuA0bYX9OBZ4HpIhIDPARMAYz9s8uMMSddehVKKaU61WWL3hhz3Bizxf6+CtgLpHzlsKuBV4xlPRAlIknAPGC1MabMntxXA/NdegVKKaXOqlt99CKSAUwCNnylKAXIddjOs+/rbL9SSp1VU1MTeXl51NfXuzuUASUoKIjU1FT8/f2d/ozTiV5EwoA3ge8ZYyp7EF9X518ELAJIS0tz9emVUh4mLy+P8PBwMjIyEBF3hzMgGGMoLS0lLy+PoUOHOv05p8bRi4g/VpJ/1RjzrzMckg8McdhOte/rbP9pjDGLjTFTjDFT4uLOOEJIKTWI1NfXExsbq0negYgQGxvb7W85zoy6EeAvwF5jzP90ctgy4Fb76JsZQIUx5jiwCpgrItEiEg3Mte9TSqkuaZI/XU/+TJzpujkX+DqwU0S22ff9BEgDMMY8BywHFgAHgVrgDntZmYg8Cmy0f+4RY0xZt6PshvrmeoL8gvryVyillEfpMtEbY9YBZ61CjDWp/Xc6KXsReLFH0XXTCztf4O1Db/P3K/6uyV4ppewG5JOxPTUmdgwnak5g0MVUlFKqjVdNajYzeSb/PeO/CfYLdncoSikvsXPnTtLT03n22Wd7dZ5vfOMbxMfHM3bsWBdF5jyvSvRtcipyuH/t/VQ3Vrs7FKWUhxs3bhyvv/46r7zySq/Oc/vtt7Ny5UoXRdU9XpnoyxvK2XxiM4cqDrk7FKWUF4iPj2f37t29OscFF1xATEyMiyLqHq/qo28zMX4iK69fqV04SnmJh9/ezZ4C1z6nOTo5goeuHOPUsT/60Y9oaGjg6NGjpKenn1J2/vnnU1VVddpnfvvb33LppZe6JNbe8spEDxDsF4wxhlVHVzE9cTrRQdHuDkkp5YFWrFhBTU0Nl19+Obt37z4t0X/yySduisx5XpvoAQpqCvjxJz/mG2O/wX2T7nN3OEqpHnK25e1q9fX1PPjggyxbtoyXXnqJXbt2sWDBglOO0Ra9m6WEpfDSvJcYa+v/u9xKKc/32GOPceutt5KRkcG4ceNYtmzZacd4QoveK2/GOpoYPxE/Hz9qm2opqStxdzhKKQ+xf/9+Vq9ezfe+9z3AGn2za9euHp9v4cKFzJw5k/3795Oamspf/vIXF0XaNa9u0bdpNa3cvvJ2wgPCeWHuCzp/hlKqS1lZWWzYsOGU7S1btvT4fEuWLHFFWD0yKBK9j/hw57g7iQmK0SSvlBp0BkWiB5ibMbf9fXNrM34+g+bSlVKDnNf30X/V0gNL+Y+3/4Paplp3h6KUUv1i0CX61PBU0iPSaWptcncoSinVLwZd/8XUxKlMTZzq7jCUUqrfDLoWfZuy+jJ+9MmPKKwpdHcoSinVpwZtoq9qrOLT/E/ZXdK7iYqUUmqgG3RdN23SI9JZef1KQv1D3R2KUkr1qUHbogfak/wXx79gy4mePwihlPJerlp4ZOXKlWRlZTF8+HB+/etfd3pc23QLEydOZMqUKb36nW0GdaIHa0z9o+sf5dntvftLVEp5J1csPNLS0sJ3vvMdVqxYwZ49e1iyZAl79uzp9Pg1a9awbds2Nm3a1OPf6WjQdt208fPx44+X/BFbsM3doSilBqjeLjzyxRdfMHz4cDIzMwG4+eab+fe//83o0aNdFeJZdZnoReRF4AqgyBhz2jSQIvID4BaH82UDccaYMhHJAaqAFqDZGOOa7yEulhaRBlit++3F2zkn4Rw3R6SUOs1Ll5++b8w1MO0uaKyFV//j9PKJX4NJt0BNKbxx66lld7zr9K/u7cIj+fn5DBkypL0sNTX1lHl0HIkIc+fORUT41re+xaJFi5yOszPOtOj/CjwDnPF7izHmSeBJe4BXAt83xpQ5HDLbGOMR00Y+t/05/rLzLyy7dhlDwod0/QGllNfr74VH1q1bR0pKCkVFRcyZM4dRo0ZxwQUX9OqcXSZ6Y8zHIpLh5PkWAu6boq2Xbh1zKyOjR2qSV2ogOlsLPCDk7OWhsd1qwbdx1cIjKSkp5Obmtpfl5eWRkpJyxt/Ztj8+Pp5rr72WL774ou8TvbNEJASYD9zrsNsA74mIAZ43xiw+y+cXAYsA0tLSXBVWt0QERLRPflZSV0JsUKzOdqnUIOaqhUemTp3KgQMHOHLkCCkpKbz++uu89tprpx1XU1NDa2sr4eHh1NTU8N577/Hzn/+819fhylE3VwKffqXb5jxjzGTgMuA7ItJptWSMWWyMmWKMmRIXF+fCsLovpyKHq966iiX7PPbLiVKql1y58Iifnx/PPPMM8+bNIzs7mxtvvJExY6zlERcsWEBBQQEAJ06c4LzzzmPChAlMmzaNyy+/nPnz5/f6WsQY0/VBVtfNO2e6GetwzFLgH8aY06spq/wXQLUx5rdd/b4pU6YYVw0r6gljDL/f8ntuGHmDduMo5SZ79+4lOzvb3WEMSGf6sxGRzZ0NeHFJi15EIoELgX877AsVkfC298BcoOfrcPUjEeH753y/Pck3tjS6OSKllOo5Z4ZXLgEuAmwikgc8BPgDGGOesx92LfCeMabG4aMJwFJ7H7cf8JoxZqXrQu8fT258kv0n9/P8pc/j6+Pr7nCUUqrbnBl1s9CJY/6KNQzTcd9hYEJPAxsoRkSPwFd8MXTdxaWUUgPRoH8ytivXDL+m/b0xRkfhKKU8zqCf68ZZORU53LbyNnKrcrs+WCmlBhBN9E7y8/HjZP1JSuo84iFfpZRqp103TkoNT+Wtq9/SG7JKKY+jLfpuaEvyb+x/Qx+mUkp5DE303WSMYV3+Oj7L/wxnHjZTSnk2Vyw8kpuby+zZsxk9ejRjxozhD3/4gwsj7Jom+m4SEX59/q/5/ezf6wgcpQYBVyw84ufnx1NPPcWePXtYv349f/zjH8+68IiraaLvgRD/EHx9fKlsrOTJjU9S11zn7pCUUn2otwuPJCUlMXnyZADCw8PJzs4mPz/fVeF1SRN9L+wq2cWSfUvYVrTN3aEo5fXuWHkHbx18C4Cm1ibuWHkHbx96G4C65jruWHkHK49YD99XNVZxx8o7eP/o+wCcrD/JHSvvYG3uWoBuj55zXHjkq84//3wmTpx42uv9998/47lycnLYunUr06dP71YMvaGjbnphVvIsVly3goTQBHeHopTqI65ceKS6uprrr7+e3//+90RERLg61E45NXtlf3P37JU9salwEy2mhelJ/VdLK+XNBsLslfX19UybNq194ZHQ0FB++MMfnnKMMwuPADQ1NXHFFVcwb9487r///l7F1d3ZK7VF7wKtppUnNj5BgG8A0xKn6U1apbyEqxYeMcbwzW9+k+zs7F4n+Z7QRO8CPuLD0xc/TYh/iCZ5pbxE28Ijn376KWCNvnn88cd7dK5PP/2Uv/3tb4wbN46JEycC8Pjjj5+2LGFf0UTvIomhiQC0tLbw5oE3uXbEtfj7+Ls5KqVUT2VlZbFhw4ZTtrds2dKjc5133nlufe5GR9242IbCDTy6/lE+OPaBu0NRSilAW/QuNyt5Fv+34P+YEOfxU/ErpbyEtuj7QFuSz6/OZ2PhRjdHo5TnGoijAt2tJ38mmuj70COfP8JP1/2UppYmd4eilMcJCgqitLRUk70DYwylpaUEBQV163PaddOHHp71MHXNdfj76k1ZpborNTWVvLw8iouL3R3KgBIUFERqamq3PqOJvg+1jcQB+ODoB8xKmUWwX7AbI1LKc/j7+zN06FB3h+EVuuy6EZEXRaRIRHZ1Un6RiFSIyDb76+cOZfNFZL+IHBSRH7kycE9ypOII9390Py/vftndoSilBiFnWvR/BZ4BzjZH5yfGmCscd4iIL/BHYA6QB2wUkWXGmP6bm3OAGBo5lOcufY4piWd8OlkppfpUly16Y8zHQFkPzj0NOGiMOWyMaQReB67uwXm8wszkmfj7+FPbVKtj7JVS/cpVo25mish2EVkhImPs+1KAXIdj8uz7zkhEFonIJhHZ5M03XxbvWMwDHz1AQXWBu0NRSg0SrrgZuwVIN8ZUi8gC4C1gRHdPYoxZDCwGa/ZKF8Q1IH17wrc5N+VcksOS3R2KUmqQ6HWL3hhTaYyptr9fDviLiA3IB4Y4HJpq3zeoBfkFMTVxKgBbi7aSU5Hj3oCUUl6v14leRBLFPmWjiEyzn7MU2AiMEJGhIhIA3AycPsfnINXU0sSDHz/Ir774lbtDUUp5uS67bkRkCXARYBORPOAhwB/AGPMccANwt4g0A3XAzcZ6lK1ZRO4FVgG+wIvGmJ4vuuhl/H39+d+L/5e4kDh3h6KU8nK6wtQA0GpaeWP/G1wz/BqC/Lr3aLNSSsHZV5jSuW4GgB3FO/jlhl+y/Mhyd4eilPJCOgXCADAxfiJLLl/CmNgxXR+slFLdpC36AWKsbSwiQmFNIUv2LXF3OEopL6KJfoBZsm8JT295muJa731oTCnVv7TrZoC5b9J9XDv8Wh2No5RyGW3RDzB+Pn5kRGYA8Paht1mVs8q9ASmlPJ626AeoVtPKmwfeJMgviLnpc7E/k6aUUt2miX6A8hEfnrn4Gfx9/TXJK6V6RbtuBrCwgDACfQOpb67nhx/9kJ3FO90dklLKA2mi9wDVTdXsLt3NwfKD7g5FKeWBtOvGA9iCbbx51Zvt0yO0mlZ8ROtopZRzNFt4iLYkv7d0L9f9+zoOlx92c0RKKU+hid7DBPoFEuIfgr+vv7tDUUp5CO268TCZkZm8uuDV9pE4FQ0VRAZGujkqpdRApi16D9SW5F/a9RLXL7tep0tQSp2Vtug92KzkWRTVFhETFOPuUJRSA5i26D1YVkwWD057EF8fX8rry8mrynN3SEqpAUgTvZd48JMH+dbqb9HU2uTuUJRSA4x23XiJ+8+5n6LaIvx9dDSOUupU2qL3ElkxWZyfej4An+Z/yoGTB9wckVJqoOgy0YvIiyJSJCK7Oim/RUR2iMhOEflMRCY4lOXY928TkcGz2rcbNbU08dj6x3hq01PuDkUpNUA403XzV+AZ4JVOyo8AFxpjTorIZcBiYLpD+WxjTEmvolRO8/f1Z/GcxYQHhLs7FKXUANFli94Y8zFQdpbyz4wxJ+2b64FUF8WmemhIxBCigqJoNa08tv4xtpzY4u6QlFJu5Oo++m8CKxy2DfCeiGwWkUVn+6CILBKRTSKyqbhYHwByhcqGSjYc38CWIk30Sg1mLht1IyKzsRL9eQ67zzPG5ItIPLBaRPbZvyGcxhizGKvbhylTphhXxTWYRQVF8foVrxPiFwJAfXN9++RoSqnBwyUtehEZD7wAXG2MKW3bb4zJt/8sApYC01zx+5TzQv1DEREKawq55t/X8Paht90dklKqn/U60YtIGvAv4OvGmC8d9oeKSHjbe2AucMaRO6rvRQZGMs42jpHRI90dilKqn3XZdSMiS4CLAJuI5AEPAf4AxpjngJ8DscCf7JNtNRtjpgAJwFL7Pj/gNWPMyj64BuWEYL9gnrzwyfbt7cXbGW8br+vRKjUIdJnojTELuyi/E7jzDPsPAxNO/4Ryty0ntnDbytt4eNbDXDfiOneHo5TqY/pk7CA0KX4SD818iCsyr3B3KEqpfqCJfhASEW4YeQMBvgHUN9fzmy9+Q0VDhbvDUkr1EU30g9yukl3848t/sL14u7tDUUr1EZ29cpCbkjiFFdetIC4kDrDmytH1aJXyLtqiV+1JfnfJbhYsXcDO4p1ujkgp5Uqa6FW7yMBIMiMzSQpLcncoSikX0kSv2qWGp/L8nOexBdswxrDm2BqM0dkolPJ0mujVGX147EO+u+a7rMld4+5QlFK9pIlendHFaRfzu4t+x+whs90dilKqlzTRqzMSES5NvxQRoaSuhO988B0KqgvcHZZSqgc00asu5VXlsa90H+UN5e4ORSnVA5roVZcmxk9k+fXLGR07GoCDJw+6OSKlVHdooldOCfQNBGBT4SauW3Ydyw8vd3NESilnaaJX3TIhfgLfO+d7XJx2sbtDUUo5SRO96hZ/H3++MfYbBPkF0djSyEOfPUReVZ67w1JKnYUmetVjOZU5vH/0ffaU7nF3KEqps9BJzVSPjYweyfLrlhMZGAnA0cqjpIWn6apVSg0w2qJXvdKW5I9XH+emd27iue3PuTkipdRXaYteuURiaCL3TLiHuRlz3R2KUuortEWvXEJEuHXMrSSGJmKM4cmNT/Jp/qfuDksphZOJXkReFJEiEdnVSbmIyNMiclBEdojIZIey20TkgP11m6sCVwNXdVM1nx//nK1FW90dilIK57tu/go8A7zSSfllwAj7azrwLDBdRGKAh4ApgAE2i8gyY8zJ3gStBrbwgHBeXfAqAT4BABypOEJUYBTRQdFujkypwcmpFr0x5mOg7CyHXA28YizrgSgRSQLmAauNMWX25L4amN/boNXAF+wXjK+PL62mlfvX3s+9H96rc9sr5SauuhmbAuQ6bOfZ93W2v09U1DYRGaLrnQ4kPuLDL8/7JU2tTYhIe7LXIZhK9Z8BM+pGRBYBiwDS0tK6/fnmllbm/O4jUqKDuX5yKleOT9akP0C0TYYG8OreV9latJXHz3+8ff4cpVTfctWom3xgiMN2qn1fZ/tPY4xZbIyZYoyZEhcX1+0AmlsNd52fSW1DCz99axdTH3+f77y2hTX7imhuae32+VTfaDEtGEx7/71Squ+Js/2mIpIBvGOMGXuGssuBe4EFWDdjnzbGTLPfjN0MtI3C2QKcY4w5W38/U6ZMMZs2bXL6IhwZY9hdUMk/N+fx7235nKxtIi48kGsmJnPd5FSykyJ6dF7lOsYYRISy+jJW5azipqyb8BEd6atUb4jIZmPMlDOVOdV1IyJLgIsAm4jkYY2k8QcwxjwHLMdK8geBWuAOe1mZiDwKbLSf6pGuknxviQhjUyIZmxLJTxZk8+G+Iv65OY+XPs3hz58cITspgusmpXD1xGTiI4L6MhTVibb++X8d+BfPbnuWWcmzSI9Id3NUSnkvp1v0/ak3LfrOlFY38M6O4/xraz7bc8vxEThvRBzXT05hzugEQgIGzO2KQcMYw4HyA4yMHglY0ygkhSW5OSqlPNPZWvSDJtE7OlhUzVtb81m6NZ/88jpCAnyZNyaRayalcO6wWPx8tRuhv20+sZk7V93JUxc9pXPdK9UDmug70dpq2JhTxlvb8nl3x3Eq65uxhQVy5YQkrp2UwriUSB0G2E9qm2r5884/c9e4uwjxD2nvx1dKOUcTvRMamltYs6+Yt7bm8+G+IhpbWhlqC+WqCclcPTGZzLiwfo1nMGtubebu9+/mymFXctWwq9wdjlIeodc3YweDQD9f5o9NZP7YRCpqm1i+6zjLthXw9IcH+MMHBxiXEsnVE5O5YnwyiZF6E7cv1TTVANZqVkqp3tMWfRcKK+p5Z0cB/95WwM78CkRgWkYMV01M5rKxScSE6njwvuDYdbPm2Bp8fXy5IPUCN0el1MClXTcucri4mmXbC1i2vYDDxTX4+gjnDbdx5YRk5o5JICJIW6CuZozhjlV30NTSxN8W/E3H2yvVCU30LmaMYe/xKt7eUcDb2wvIO1lHgK8PF2bFccX4JC7JTiAsUHvFXKWxpZHyhnLiQ+KpbaplT+kepiSe8d+zUoOWJvo+ZIxhW245b28/zvKdxymsrCfQz4fZWfFcPj6JS7LjdYy+Cz277Vme2/Ec71zzDkMihnT9AaUGCU30/aS11bD52Ene2V7A8l2FFFc1EOTvw8Wj4lkwLonZWfGEaku/V+qa6/gs/zMuSb8EgNK6UmKDY90clVLup4neDVrsY/Tf2VHAyl2FlFQ3EuTvw0Uj41kwPomLR8Vr904vHS4/zE3v3MRPZ/yUq4df7e5wlHIrHV7pBr4+wozMWGZkxvLwVWPZmFPG8p3HWbGrkJW7Cwn08+GCkXEsGJfIxaMSiAzWG7ndlRCawE1ZN3FuyrmANf7ez0f/SSv1Vdqi72ctrYbNR0+yfOdxVu4qpLCyHn9f4dzhNi4bm8ic0Yk6ZLMHjDF8f+33iQ+J5yfTf+LucJTqd9p1M0C1thq25ZWzclchK3YdJ7esDh+B6UNjmT82kbljEkiKDHZ3mB6hpbWFp7c+TUxQDLeN0TXo1eCjid4DtM2j35b0DxVbT4dOSI1k3thE5o1JZJhOw+C0jYUbeW3va/x85s91UXI1KGgfvQdwnEf/gXlZHCyqZtXuQt7bXcgTK/fzxMr9DI8PY+7oBOaOSWR8SiQ+PjrpV2fyqvLIqcwhyE+nq1BKW/QeoKC8jtV7TrBqdyEbjpTR0mpIiAjk0mwr6c/MjCXAT58Y/aq2m7PNrc08uv5RFo5ayKiYUe4OS6k+oS16D5ccFcxtszK4bVYG5bWNrNlfxHu7T7B0az6vbjhGWKAfF2bFMXd0AheNjNdF0e3aRuDkVuWyNnctM5NmaqJXg5K26D1YfVMLnx0q4b3dJ3h/bxEl1Q34+gjTMmK4JDueOaMTSI8NdXeYA0J1YzWh/qGICKtyVmEwzEufp3PeK6+hN2MHgdZWw/a8ct7fe4L39xSx/0QVACPiw7g4O55LsxOYnBaNr/br8+3V36amqYaXL3tZJ0lTXkMT/SB0rLSW1XtP8MHeE3xxpIzmVkNUiD+zs+K5JDueC0bGDdrZNltaWzjZcBJbsI2aphpe2f0Kt425jRD/EHeHplSPaaIf5Crrm/jkyxI+2HuCNfuLOFnbhJ+PMCUjmotHxXPxqHiGxYUNym6MlTkrefDjB/nbZX9jfNx4d4ejVI/1OtGLyHzgD4Av8IIx5tdfKf8dMNu+GQLEG2Oi7GUtwE572TFjTJdrw2mi7zstrYatx07ywb4i1uwrYl+h1cUzJCaY2VnxzB4Vz8zMWIL8fd0caf/JrcplSLg1E+bSA0sZGTOSMbFj3ByVUt3Tq0QvIr7Al8AcIA/YCCw0xuzp5Pj7gEnGmG/Yt6uNMd160kcTff/JL69jzb4i1u4vYt3BEuqbWgny92FmZiwXZcUzOyuetNjB0aXR2NLIFUuv4JyEc/jV+b9ydzhKdUtvE/1M4BfGmHn27R8DGGPO+D9BRD4DHjLGrLZva6L3EPVNLaw/XMra/cWs3V9ETmktAJm2UC7MiuOirHimD43x6tZ+VWMVTa1NxATFkF+dz3s573FL9i0E+Or8Q2pg6+04+hQg12E7D5jeyS9KB4YCHzrsDhKRTUAz8GtjzFudfHYRsAggLS3NibCUqwX5+3JRVjwXZcUDYzhSUsPa/UWs3V/MaxuO8dKnOQT6+TAjM5YLR8ZxYVYcmbZQr+rbDw8Ib3+/KmcVz257lsuGXkZiaKIbo1Kqd5xp0d8AzDfG3Gnf/jow3Rhz7xmOfRBINcbc57AvxRiTLyKZWBXAJcaYQ2f7ndqiH3jqGlvYcKSUj74s5qMvizlsn4snJSqYC7PiuGCEjVnDbV43ksex//657c8xI2kGE+Mnujcopc6gty36fMBxzbZU+74zuRn4juMOY0y+/edhEVkLTALOmujVwBMc4Njah9yy2vakv2xbAa9tOIavjzBpSBTnj4jjgpE2xqdGefy4/bYkX9FQwT/2/4MW06KJXnkcZ1r0flg3Yy/BSvAbga8ZY3Z/5bhRwEpgqLGfVESigVpjTIOI2IDPgas7u5HbRlv0nqWppZWtx8r5+MtiPj5QzM78CoyByGB/Zg2L5bwRNs4fHufxN3Vrm2oREYL9gtlWtI1VOau4Z+I9p3T3KOUuvWrRG2OaReReYBXW8MoXjTG7ReQRYJMxZpn90JuB182pNUc28LyItAI+WH30Z03yyvP4+/owbWgM04bG8MC8LMpqGll3sIRPvixm3cESVuwqBCAtJsSe9G3MGmbzuDl5HB+o2l68ndVHV/Pdyd91Y0RKOUcfmFJ9yhjDoeIa1h2wkv7nh0qpaWzBR2BcSiSzhts4b7iNc9KjPW40T21TLSH+IRhjuO/D+5ibMZerhnX5mIhSfUJnr1RuIyIMjw9jeHwYt587lKaWVrbllvPpwRI+PVjCnz8+zLNrDxHo58PUjBhmDY9l1jAbY5Mj8PMd2PPQtLXwKxsrqWuuo6W1BYBW04oxBl8fz6q4lPfSFr1yq+qGZjYeKWOdPfG3PakbHujH9MxYZg2LZdbwWLISwgf0MM62/0ciwruH3+X5Hc+zeM5iHZap+o226NWAFRbox+xR1tQLACXVDXx+qJTPDpXy2aES3t97AoDY0ABmZMYyIzOGmcNiB9zcPI6xRAdGMzJ6JPEh1jUVVBeQFJo0oOJVg4u26NWAlneyls8OlbL+UCmfHy7leEU9AHHhgczIjGWmPfkPHaAPbjW2NHL50suZlTyLh2c97O5wlBfT2SuVVzDGcLS0ls8Pl/K5PfEXVzUAEG9P/NMzY5iRGTtgnthtbm3m3cPvMiR8CJMTJlPTVMPGwo1cmHrhgIhPeQ9N9MorGWM4XFLDhsNlrD9cyvrDpRTZE39ceCDThsYwY2gM04bGMiI+bEAspv7a3tf41Re/4o0r3iA7Ntvd4SgvooleDQrGGI6U1LDhiJX4Nxwuo7DS6uqJDvFnakYM0zNjmZYRQ3ZSuFtG9TS3NrPh+AbOTTkXgL/v+zuRQZHMz5jf77Eo76I3Y9WgICJkxoWRGRfGwmlpGGPILatjw5FSvjhSxoYjZby3x7q5Gxrgy+T0aKZlWA96TRgS1S/j+P18/NqTvDGGZYeWkRyW3J7oW02rLm+oXE5b9GpQKayo54ucMjYeKeOLI2Xta+sG+PowPjWSczKimZoewznp0USH9v3UxC2tLdQ01xAREEFhTSG3r7ydh2c9zPSkM04Qq1SntEWvlF1iZBBXTUjmqgnJAJTXNrIp5yQbc8rYmFPGi+uO8PxHhwFrYfUpGTFMSY9mSkY0aTEhLr+B6uvjS0RABAA1TTWkhqeSGp4KQFFtEQE+AUQFRbn0d6rBR1v0Sjmob2phe245m45ayX/z0ZNU1TcDYAsLZEp6NOekR3NORjRjkyMJ8Ou7bpb/XvffrMtfx/s3vI+/r2fNC6T6n7bolXJSkL8v0zNjmZ4ZC1hr7B4oqmJTzkk2Hz3JpqNlrNxtTdIW6Gd190xOi2ZyejST06KJCw90WSx3jLmDc5PPbU/yi3csZlbyLMbaxrrsd6jBQVv0SnVTUWU9m46eZMvRk2w+dpJd+RU0tVj/j9JiQpicFtWe+LMSw/F3weie8vpyLl96ObeNuY1F4xdhjKHVtOp8OqqdDq9Uqg/VN7Wwu6CCzUetVv+WY+XtD3IF+fswPiWKSelRTBoSzeS0KOIjgnr0e2qbrDV8Q/xD2HB8Aw999hDPXPwMw6OHu+xalOfSrhul+lCQvy/npMdwTnoMYA2bzC+vY8uxcrYesxL/i+uO0NRi3eRNjgxiUlo0E4dEMTEtinEpkU4N7XScDz/QN5AR0SMYEmGtgLWzeCfhAeFkRGa4/gKVx9MWvVL9oK3Vv/VYOdtyrVfeyToA/HyErMRwJg6JYsKQKCYOiWJYXFi3lmH8+vKvU9VYxdKrl+rUCoOUdt0oNQAVVzXYk/5JtudWsD2vvH2ET1igH+NSIhk/JJKJqVGMHxJFcmRQp0m8pK6EwppCxtrG0tzazF3v3cUt2bdwafql/XlJyo2060apASguPJA5oxOYMzoBgNZWw5HSGrbndrT6rS4fqzFmCwtgfGoU41MjmZAaxbjUSGxh1igfW7ANW7ANgLL6slOesK1urOZY1TFGx452w1WqgUBb9EoNYA3NLew7XsWOvHK251WwPbecg8XVtP23TYkKZlxKJONSIxmfGsm4lEiiQqwneo0xiEj7RGpvXf0Ww6KGufFqVF/SrhulvEh1QzO78yvYmV/Bjjzr55GSmvby1Ggr+Y9NsRJ/RpwP28s+48phVwLw3PbnKG8o58GpD2p/vhfpddeNiMwH/gD4Ai8YY379lfLbgSeBfPuuZ4wxL9jLbgN+at//mDHm5W5fgVKqXZh9mcW2h7oAKuqa2J1fwQ57BbArv4IVuwrby1OiQnk3ZTNjUyLY31SIn39te5L/vOBzxseNJ9Q/tN+vRfWPLlv0IuILfAnMAfKAjcBCY8weh2NuB6YYY+79ymdjgE3AFMAAm4FzjDEnz/Y7tUWvVO9V1Daxu8BK/DvzK9hdUOnQ8jckRASRlezLdrmf8xOu5cFpD5AaHQygLX0P1NsW/TTgoDHmsP1krwNXA3vO+inLPGC1MabM/tnVwHxgiTOBd1t9BeSsg7AECIuH0Hjw79nDKUp5usgQf2YNtzFruK19X1V9E3sKKtlVUGn/BlBOTdUi3j0Yxjtr1xARUYx/0qtcGP3/OD99ImOSI8m0hbpl7n7lOs4k+hQg12E7DzjTHKrXi8gFWK3/7xtjcjv5bMqZfomILAIWAaSlpTkR1hkUfwmvf+3UfUGRcM1zMGqBVb75rxAWd2plEDscAkLOeEqlvEl4kP9p3T51jeezr7CS3QWVrMvdzObKCN7ZUs+/1m/HJ/goAYEVjAibxZikaEYnR5CdFMGoxHDCg3SiNU/hquGVbwNLjDENIvIt4GXg4u6cwBizGFgMVtdNj6JIGAOLPoLqEw6vIoiyVxzlR2HLy9BYfernbn8XMs6Dfe/Cmsc7KoAw+2vCQgi1Wd8YmhshJBZ8tIWjvENwgC+T0qKZlBbNf85IB66juaWVwyU1/HLDL9hT8QURDReyanchf9+yB9MSBghDYoLJTrQSf3ZSBKOTIkiNDh4QSzaqUzmT6POBIQ7bqXTcdAXAGFPqsPkC8ITDZy/6ymfXdjdIpwWEQPLEzstHzIGf5ENDNdQUQXUxVBdCvH18sX+IVSlUn4CSA1Yl0dIAoy63Ev3ml2H1z0B8re3QeOvbwfV/gZAYyNsMpQcgNK6jsgi1gU48pTyMn68PIxPCefGKJyioLmBIxBBaW1u55t/XE+mXzIyw77PneCV7j1eyeu+J9uGeYYF+ZCWGMyoxnFFJEYxOCmdkgrb+3c2Zm7F+WN0xl2Al7o3A14wxux2OSTLGHLe/vxZ40Bgzw34zdjMw2X7oFqybsWVn+50D5masMdBQCQFhVrIu3AlHP7MqgLaKoqYIbl9u3QtY8SPY8Oyp5xBf+OkJ8PWHDYshd4O9ErBXFOGJVgUE0NqilYIasFpNK28fepuIgAhmp82msaWRe96/h4VZXyfGZzx7j1exv7CSvcer2FtY2f6UL1hDPkclhpOVGE5WotX1M9QW6pKZPZWlVzdjjTHNInIvsApreOWLxpjdIvIIsMkYswz4rohcBTQDZcDt9s+WicijWJUDwCNdJfkBRcTq42+TOM56debin8K0uxwqgiKromhbNKL6BORvhpriju6j0Hj4wQHr/d+/Djmf2CuBOOsVlwWX/NwqP/oZmNaOsqAo7UJS/cZHfLh6+NXt2ydqT1DZWEmAnw+TUqNJtTUTFLOJH1w2l1D/UAoq6tlnb/XvK6xif2EVa/YX09JqNS4DfH3IjAtlVGI4IxPDyUqwKoKUqGAd9eNi+sCUuzTWWpVBY411bwFg2xI4vt3aX1MMNSXWTeNb37LKF18EBVs7ziG+MPwSuOUf1vbqh6C5waGisEFMJsRn9+eVqUGm7QncN/a/waPrH+Wda98hPSKdkroSgnyDCAsIaz+2obmFQ0U17CusZH9hFftPVPFlYRUFFfXtx4QF+jEiIYyR8VYFMDIhjKyEcOLCA7UCOAt9MtZblByAyoKOSqCm2KoIpi+yyl+YA0V7obGq4zPZV8FNf7PeP5VtfUsJtUGIvTIYfgmMv9Eq/3KVdaM5JNY6JiDMOl4pJxhjOFB+gJHRIwF4bP1jrMxZyZob1+Dv499eIZxJRV0TB05YiX9/YRVfnqjiyxPVlNU0th8TGezPyIQwRiSEMyI+jJEJ4YxICCMuTCsA0EnNvIdthPXqzJ2rrZ9NdVZFUFsCfvbnCIyxEnpNccer5ACEJwA3QlM9vHbjqefzDYQLHoALf2jdwH7n+/ZKIrajskgab93ANsZ6aVfSoCUi7Uke4Jrh1zAmdgz+PlbX5Xc//C7JYcn8ePqPT/tsZLC/tRB7Rswp+0uqG/iyLfEXVfNlYRXvbC+g0qH/v60CGB4fxvB4qxIYkRBGYkTns30ONprovZF/MEQNsV5tRGDOw51/xscP7voQakqtCqLtW0PyJKu8oRJy11vlTR3zqjDvVzDzHij5Ev4006ESsP+cehdknGud6/DajrIQmzVSyc91a6yqgWWsbWz7+rbGGNIj0okLiWvf/tmnP+PyzMuZmTyz03PYwgKxDQ885aEvYwzF1Q0cOFHNAXsFcOBEFSt2FVJe2/HYTligH8Piwxge11YJWK8h0cGD7gEwTfTK4usHKed0Xh6RDN/bab13/MYQlmjtCwyH875n319qvQp3Wc8eAJzYBW9+8/TzLvw7ZM2HYxvgk992dB21vbIus0YpNVRb9x+Co3RkkgcSER6Y+kD7dkldCZtObOKcBOvfXHVjNUsPLuWyoZe1T7d8tnPFhwcRHx7EuV+pAEprGjlYVM2BomoOnqjiQFE1nxwo5s0tee3HBfj6kGELYXh8GMPiOl6ZcaGEBnpnSvTOq1J960zfGCKSO0YHncmQ6XDPBvu3hbbKoMwaVQTQVGuNSiraa5XZ10clcY2V6He9CW9/FxAIju6oCK7/s9V1dGwDHPvcoZKIsX5GD7UqMTWgxIXEseK6FbSYFgC2FG3hiY1PMCZ2DLZgGydqTlBaX0p2TLbT3S8iYn0DCAtkhsOTvwCV9U0cKqrmYFE1B4urOVRUzd7jVazcVUirw23KpMggMuNCrcRvCyUzLoxh8WEkRQR59INgejNWDUyNtVBXZt0w9gu0KoDDH1n72r4x1JbC9S9aD6199ASs+eXp5/nhESvpf/xb2L4EgmOs7baflz5sVQQndkPdyVPL/QL6/7oHsdzKXJLDkvH18eX57c/zzLZnWHPjGmzBNkrqSggPCCfQ17VdfQ3NLRwrreVQcTWHims4WFTN4eJqDhfXUNXQcR8gyN+HoTar1W9VAKHt2xED5GEwHXWjvJ8x1lDV2lKHyuAkjL3eukG885/WFBft5Set0UkPHrXuXyy9G7a/duo5w5Phv/Za7z95yqoMHCuCiGQYfZVVXl0EvgEQGKE3pF2grL6MbUXbuDjNmknlJ5/8hE0nNrHq+lWICA0tDS5P+o6MMRRXNXCouIbDJVbiP1RczZGSGnLLak/5FmALC2CoLZShtlAybFZFMNQWRnpsiFOLvruKJnqlulJ2GMqPWd1JbRWBaYWLHrTKl/8ADr5vldeXW/tsI+Fe+7OAL14Gxz6znm0IjrIqgtSpcK39SenP/2TdxA6OsbqegqMhMvXso6hUuy+Of8HxmuPtD2zd8u4tZERm8MvzrG9xZxu66WqNza0cK6vhcHENh0tqOFxcTU5JLUdKayiuamg/TgSSIoLIsFcAQ2PtP20hDIkJIdDPtZWADq9UqisxmdarMwue7Hjf2gJ15R33EQBm3QfZV3RUFHUnIdShn3jr/0HRbk4xYm7Hw25/mGB1V7VVAsHRMGw2TP+WVb7lFWsuJsfy0DgIDGMwmJY0rf29MYY56XOIDbb+fFtaW7jqrau4dfSt3DTqpj6PJcDPh+Hx4QyPDz+trKq+qT3pHymuIae0hiMlNSzfeZzy2qb240QgOTKYDFsI6bFWJZAeG0KGLZQR8WEur7Q00SvVXT6+9iTukMhHLTj7Z+75zHpWob7cqgRqy6yb2m3G32xNsFd30npV5kGlfe5AY+Dt74H9xmW7qXfB5b+1ZlT90/SOCiAoyvo5cj6MuNQarXTwA3t5VMcxHrpWg4hw+9jb27erm6qZGD+RxFBrBFhJXQmLVi/iwakPMj3pTDOq953wIH/GpVpr+H5VeW0jR0qs5J9TUmv9LK09pRKICQ1gy8/muDwuTfRK9Rf/IPBPtCay+6rZpz9EdIr/2tdRCbRVFLHDrbKWRkiebN9fCqWHrAolItlK9NVF8PrC08/Z9gzEyaOw9NtWJdBWSQRHWbO2JoyB+koo3mcvsx8zgG5URwZGtnfhAFQ0VBATFENUYBQAW4u28uy2Z/nZjJ8xJGJIJ2fpe1EhAUxKC2BSWvRpZeW1jRwtraW8rukMn+w9TfRKDXQiHWsjnElgGNzwl84/HxYPd63p+DZRV269T7O3dluarG8p5cegbodV1lhtdWUljLHmX3r5ilPP6R8KN75szbyat8m6Wd1eEURa70dfDRFJVqVUfcLaFxRpfZPpw/70YVHDeGHuC+3bVY1VlNSXEBUUBcDyw8tZk7uGh2c9TIj/wFhwKCokgKiQvqs8NdEr5e38AiFlcufltuFw+zun7mtu7EjGCWPgln92VBBtP6PSrfKGKijPhfqdVlnbXEupU6xEv+9dWOawnLRvgJXwb18OcSOtOZZ2vGHta68oImHsDVYlVl1k/Y62iqKbz0VckHoBF6Re0L5d0VhBblUuwX5W19kLO1+gsKaQn874abfO60k00SulTufYNRMS07FmwpkMmw13r+vYbmm2nogOtN+sHHoB3PCita+u3PpZX26dF6xEXrClo6ztXkTW5Vai/2IxfOxwMzwgzEr4926yFhva+n9w5OOOCqLtNenrVmVVkWd1bwVGQlAEC0ctZOGojq6sysZKyuo7Zk9/5PNHiAuJ4+4Jd/foj24g0kSvlHItX79TRxxFp1uvzkz+uvUC+/MQ1VbCD7GfY/Q1EDOso4Kor7Tet93MrsiDo59DQ4VVhrG6libfapW//wvY+Y+O3+cfCtEZ1g1y4P6aFiipgHfuh6AIaiq2EhaSCBOsw+98ZyGXJExnYdaN9q6nEI+b1VUTvVJq4BCxvgkEOgxdTBxrvTpz0Y+sF0Brq1VRNDhM1T392zD8UntFYX/5OKS+ygLrG4W97DetzRBvrRHR0NJASPEBAvZ9BO8+RK0I16Uk8V3/ZBbc9gHGGMyy+/CpLbN/k4iwHpqLz4ax11nnP/q5vbvKXhYUYc0q24+VhSZ6pZT38PGxEmlQRMe+1CnWqzNX/K7jvTHW8xHN1oNPgb6BPH3x/0JVAdSVU11TyPiiT4mzWZOxHSw/yG3l6/htXQCzCmtpqK+gpbGakJHzOxL9G7daiwk5GvcfcL39hvGL860H7YIi4bLfnDqHlItooldKqTYiEBBqvdqkd0yjHA884XC4v48/c0dcQ/r4uyAshY+PruaBjx7gjUt+QhbWmP66q39PqvFFGqo6upfanog2xrrJXF8B5Uf77LI00SulVA9lRGbwi1m/aN/OjMzkznF3khk7CoClB5by9NanWXfzOiIDI9lTuoeqxiqmJk7FB6yK5Wuv93mcmuiVUspFhkUN475J97Vvz8uYR1JYEpGB1pOyr+59lXX561h741rAGtPf0NLAtSOu7dO4nJpmT0Tmi8h+ETkoIj86Q/n9IrJHRHaIyAciku5Q1iIi2+yvZa4MXimlBrK0iDSuyOx42OyHU3/Iny79U/tcNm8ffpulB5f2eRxdzl4pIr7Al8AcIA/YCCw0xuxxOGY2sMEYUysidwMXGWNuspdVG2O6NfOSzl6plBoMjDFUN1UTHnD6BGnddbbZK51p0U8DDhpjDhtjGoHXgau/EuwaY0zbVH7rgdTeBKyUUoOBiLgkyXfFmUSfAuQ6bOfZ93Xmm8AKh+0gEdkkIutF5JrOPiQii+zHbSouLnYiLKWUUs5w6c1YEflPYApwocPudGNMvohkAh+KyE5jzKGvftYYsxhYDFbXjSvjUkqpwcyZFn0+4DiCP9W+7xQicinw38BVxpj2ZVaMMfn2n4eBtcCkXsSrlFKqm5xJ9BuBESIyVEQCgJuBU0bPiMgk4HmsJF/ksD9aRALt723AucAelFJK9Zsuu26MMc0ici+wCvAFXjTG7BaRR4BNxphlwJNAGPAP+7ChY8aYq4Bs4HkRacWqVH7tOFpHKaVU39PFwZVSygv0dnilUkopD6aJXimlvNyA7LoRkWKgO1O52YCSPgpnoBqM1wyD87oH4zXD4Lzu3lxzujEm7kwFAzLRd5eIbOqsb8pbDcZrhsF53YPxmmFwXndfXbN23SillJfTRK+UUl7OWxL9YncH4AaD8ZphcF73YLxmGJzX3SfX7BV99EoppTrnLS16pZRSndBEr5RSXs5jEr0TyxkGisjf7eUbRCTDDWG6XG+WcfRUXV2zw3HXi4gREa8YgufMdYvIjfa/790i8lp/x+hqTvz7ThORNSKy1f5vfIE74nQlEXlRRIpEZFcn5SIiT9v/THaIyORe/1JjzIB/YU2mdgjIBAKA7cDorxxzD/Cc/f3NwN/dHXc/XfdsIMT+/m5Pv25nrtl+XDjwMdaKZlPcHXc//V2PALYC0fbteHfH3Q/XvBi42/5+NJDj7rhdcN0XAJOBXZ2UL8BavEmAGVjLtPbqd3pKi77L5Qzt2y/b3/8TuETaVuD1XINxGUdn/q4BHgV+A9T3Z3B9yJnrvgv4ozHmJIBxmBLcQzlzzQaIsL+PBAr6Mb4+YYz5GCg7yyFXA68Yy3ogSkSSevM7PSXRO7OcYfsxxphmoAKI7Zfo+k5vl3H0RF1es/2r7BBjzLv9GVgfc+bveiQwUkQ+tS/NOb/fousbzlzzL4D/FJE8YDlwX/+E5lbd/X/fJZcuJajcp5NlHL2OiPgA/wPc7uZQ3MEPq/vmIqxvbh+LyDhjTLk7g+pjC4G/GmOeEpGZwN9EZKwxptXdgXkST2nRO7OcYfsxIuKH9TWvtF+i6zu9WsbRQ3V1zeHAWGCtiORg9WEu84Ibss78XecBy4wxTcaYI8CXWInfUzlzzd8E3gAwxnwOBGFN/OXNnPp/3x2ekui7XM7Qvn2b/f0NwIfGfmfDg/V4GUcPdtZrNsZUGGNsxpgMY0wG1n2Jq4wxnr5SjTP/xt/Cas23Lc05EjjcjzG6mjPXfAy4BEBEsrESfXG/Rtn/lgG32kffzAAqjDHHe3NCj+i6Mc4tZ/gXrK91B7FudNzsvohdw8nr7mwZR4/k5DV7HSevexUwV0T2AC3AD4wxHvut1clr/i/gzyLyfawbs7d7egNORJZgVdg2+72HhwB/AGPMc1j3IhYAB4Fa4I5e/04P/zNTSinVBU/pulFKKdVDmuiVUsrLaaJXSikvp4leKaW8nCZ6pZTycprolVLKy2miV0opL/f/AfW2Cctl9zi8AAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(x, expon.pdf(x),\n",
    "         x, expon.pdf(x, scale=2), '--',\n",
    "         x, expon.pdf(x, scale=0.5), ':')\n",
    "\n",
    "plt.legend([r'$\\lambda=1$', r'$\\lambda=0.5$', r'$\\lambda=2$'])"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "dd86a539",
   "metadata": {},
   "source": [
    "学生t分布的例子："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "id": "d67ad433",
   "metadata": {},
   "outputs": [],
   "source": [
    "x = np.linspace(-3, 3)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "id": "d7463554",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.legend.Legend at 0x1287e7ee0>"
      ]
     },
     "execution_count": 31,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(x, t.pdf(x, df=1), \n",
    "         x, t.pdf(x, df=5), '--', \n",
    "         x, t.pdf(x, df=100), ':')\n",
    "plt.legend([r'$df=1$', r'$df=5$', r'$df=100$'])"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "id": "c8bdc676",
   "metadata": {},
   "source": [
    "相对于之前的分布，学生t分布有一个额外参数df，表示分布的自由度。额外参数可以分布对象的`.numargs`属性查看。正态分布和指数分布不需要额外参数："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "id": "b3b7c82e",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0"
      ]
     },
     "execution_count": 32,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "expon.numargs"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "id": "110debf0",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0"
      ]
     },
     "execution_count": 33,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "norm.numargs"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "id": "d2be3878",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "1"
      ]
     },
     "execution_count": 34,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "t.numargs"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "bbe1549e",
   "metadata": {},
   "source": [
    "额外参数的名称可以用`.shapes`属性查看："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "id": "47cf6149",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'df'"
      ]
     },
     "execution_count": 35,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "t.shapes"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "id": "117df9aa",
   "metadata": {},
   "source": [
    "### 离散分布\n",
    "\n",
    "离散分布没有概率密度函数，但有概率质量函数（Probability Mass Function，PMF），用来表示每个离散点上的概率，对应于stats模块的`.pmf()`方法。\n",
    "\n",
    "一个典型的离散分布是离散均匀分布，如一个均匀骰子的掷出的点数："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "id": "c576a7f3",
   "metadata": {},
   "outputs": [],
   "source": [
    "from scipy.stats import randint"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "id": "6b597567",
   "metadata": {},
   "outputs": [],
   "source": [
    "x = np.arange(1, 7)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "id": "eacb2c56",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<StemContainer object of 3 artists>"
      ]
     },
     "execution_count": 38,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.stem(x, randint(1, 7).pmf(x))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "56823996",
   "metadata": {},
   "source": [
    "`plt.stem()`函数是用来绘制杆状图的函数。\n",
    "\n",
    "离散均匀分布有两个额外参数："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 39,
   "id": "f0264b64",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'low, high'"
      ]
     },
     "execution_count": 39,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "randint.shapes"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "5aa08083",
   "metadata": {},
   "source": [
    "另一种常用的离散分布是二项分布："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 40,
   "id": "e872fb25",
   "metadata": {},
   "outputs": [],
   "source": [
    "from scipy.stats import binom"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "64b5d3fd",
   "metadata": {},
   "source": [
    "二项分布有额外的参数："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 41,
   "id": "be746122",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'n, p'"
      ]
     },
     "execution_count": 41,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "binom.shapes"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "id": "dc181a0a",
   "metadata": {},
   "source": [
    "n是二项分布的试验次数，p是每次试验得到1的概率："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 42,
   "id": "eefbdf99",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<StemContainer object of 3 artists>"
      ]
     },
     "execution_count": 42,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "x = np.arange(0, 11)\n",
    "\n",
    "plt.stem(x, binom(n=10, p=0.5).pmf(x))"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "id": "81655c23",
   "metadata": {},
   "source": [
    "泊松分布通常用于描述单位时间内单位时间内随机事件发生的次数："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 43,
   "id": "0eafbf49",
   "metadata": {},
   "outputs": [],
   "source": [
    "from scipy.stats import poisson"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "id": "504b0d1c",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'mu'"
      ]
     },
     "execution_count": 44,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "poisson.shapes"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "id": "cbf8d9a7",
   "metadata": {},
   "source": [
    "其中，mu表示随机事件发生平均发生率："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "id": "1004bf8c",
   "metadata": {},
   "outputs": [],
   "source": [
    "x = np.arange(21)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 46,
   "id": "47c9d1f0",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.stem(x, poisson(7).pmf(x))\n",
    "plt.xticks(x)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "0d373634",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.10"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
